public class AVL
{
	public final static int INT = 100;
	public final static int INTA = 101;
	public final static int INTM = 102;

	public final static int DEC = 200;
	public final static int DECA = 201;
	public final static int DECM = 202;

	public final static int CHAR = 300;
	public final static int CHARA = 301;
	public final static int CHARM = 302;

	public final static int BOOL = 400;
	public final static int BOOLA = 401;
	public final static int BOOLM = 402;
	
	public final static int VOID = 500;

	public final static int INV = 95;
	public final static int LIST = 88;

	public final static String SINT = "integer";
	public final static String SINTA = "array<integer>";
	public final static String SINTM = "matrix<integer>";

	public final static String SDEC = "decimal";
	public final static String SDECA = "array<decimal>";
	public final static String SDECM = "matrix<decimal>";

	public final static String SCHAR = "character";
	public final static String SCHARA = "array<character>";
	public final static String SCHARM = "matrix<character>";

	public final static String SBOOL = "boolean";
	public final static String SBOOLA = "array<boolean>";
	public final static String SBOOLM = "matrix<boolean>";
	
	public final static String SVOID = "void";

	public static String getString(int type)
	{
		switch(type) {
			case INT: return SINT;
			case INTA: return SINTA;
			case INTM: return SINTM;
			case DEC: return SDEC;
			case DECA: return SDECA;
			case DECM: return SDECM;
			case CHAR: return SCHAR;
			case CHARA: return SCHARA;
			case CHARM: return SCHARM;
			case BOOL: return SBOOL;
			case BOOLA: return SBOOLA;
			case BOOLM: return SBOOLM;
			case VOID: return SVOID;
			default: return "INVALID";
		}
	}

	public static String getCast(int type)
	{
		switch(type) {
			case INT: 
			case INTA: 
			case INTM: return "(Integer)";
			case DEC: 
			case DECA: 
			case DECM: return "(Double)";
			case CHAR: 
			case CHARA: 
			case CHARM: return "(Character)";
			case BOOL: 
			case BOOLA: 
			case BOOLM: return "(Boolean)";
			case VOID: return "(Void)";
			default: return "INVALID";
		}
	}

	public static String getRetType(int type)
	{
		switch(type) {
			case INT: 
			case INTA: 
			case INTM: return "Integer";
			case DEC: 
			case DECA: 
			case DECM: return "Double";
			case CHAR: 
			case CHARA: 
			case CHARM: return "Character";
			case BOOL: 
			case BOOLA: 
			case BOOLM: return "Boolean";
			case VOID: return "Void";
			default: return "INVALID";
		}
	}
}
